// 生成随机颜色代码
export const getRandomColor = () => {
  const colors = ['ff6b81', '5f27cd', '1dd1a1', 'feca57', '54a0ff', 'ff9f43', '6c5ce7', 'fd79a8', '00b894', 'fdcb6e'];
  return colors[Math.floor(Math.random() * colors.length)];
};

// 生成商品占位图
export const getProductPlaceholder = (name, size = '200x200') => {
  return `https://via.placeholder.com/${size}/${getRandomColor()}/ffffff?text=${encodeURIComponent(name || '商品')}`;
};

/**
 * 获取用户头像占位图URL
 * 使用UI Avatars服务生成基于用户名的头像
 * @param {string} username - 用户名
 * @param {string} size - 图片尺寸，格式为"宽x高"，例如"128x128"
 * @returns {string} 头像URL
 */
export const getUserAvatarPlaceholder = (username, size = '128x128') => {
  if (!username) {
    username = 'User';
  }
  
  // 提取尺寸参数
  const [width] = size.split('x');
  
  // 使用UI Avatars服务生成基于用户名的头像
  return `https://ui-avatars.com/api/?name=${encodeURIComponent(username)}&size=${width}&background=random&color=fff`;
};

// 生成轮播图占位图
export const getBannerPlaceholder = (text, size = '750x350') => {
  return `https://via.placeholder.com/${size}/${getRandomColor()}/ffffff?text=${encodeURIComponent(text || '轮播图')}`;
};

// 生成分类图标占位图
export const getCategoryIconPlaceholder = (name, size = '100x100') => {
  return `https://via.placeholder.com/${size}/${getRandomColor()}/ffffff?text=${encodeURIComponent(name || '分类')}`;
};

/**
 * 获取产品图片占位图URL
 * @param {number} width - 图片宽度
 * @param {number} height - 图片高度
 * @param {string} text - 显示的文本
 * @returns {string} 占位图URL
 */
export const getProductImagePlaceholder = (width = 300, height = 300, text = 'Product Image') => {
  return `https://via.placeholder.com/${width}x${height}?text=${encodeURIComponent(text)}`;
}; 